---
target: Umo Editor Server
keywords: Umo Editor Next,Umo Editor Server,Umo Editor后端,Umo Editor服务端
description: Umo Editor 是一个基于 Vue3 和 Tiptap 的本土化开源文档编辑器，专为国人用户设计。它提供了强大的文档编辑能力和 AI 创作功能，支持分页模式、Markdown 语法、富文本编辑、多种格式的节点插入、页面样式设置、文档导出与打印等功能。此外，Umo Editor 还支持自定义扩展、多语言设置和暗色主题。
---

# 基础介绍

Umo Editor Server 是为了增强 Umo Editor Next 的部分功能，如多用户在线协作编辑、文档批注(评论)、文档导入导出等功能而开发的配套服务器端软件，如果您已经购买了 Umo Editor Next，那您可以在遵守[Umo Team 商业软件许可协议](./license)的基础上，免费使用 Umo Editor Server。

Umo Editor Server 是一款 Nodejs 的服务器端软件，基于 [Express](https://expressjs.com/?hl=zh-CN) 实现，其主要功能和作用是，通过 http 或 websocket 接口的形式，增强 Umo Editor Next 的能力，支持私有化部署。

Umo Editor Server 不以 NPM 包的形式发行，在获得商业许可后，您可以直接拉取私有仓库的源代码按照实际需要进行修改和部署。

## 启动项目

### 1. 克隆官方仓库
```bash
git clone <Umo Editor Server 官方私有仓库路径>
```

### 2. 安装依赖

详见项目 `README.md` 文档中对应的“安装依赖”部分，**请务必按说明安装所需依赖**。

### 3. 配置环境变量

Umo Editor Server 并不提供统一的配置项，部分敏感配置通过环境变量的形式配置。延续了 Umo Editor 开箱即用的思路，您只需要在项目根目录下添加 `.env` 文件并添加环境变量信息即可快速启动，以下是一个环境变量的示例：

```bash filename=".env"
NODE_ENV = development

## 服务相关
PORT = 1235
SERVER_NAME = Umo Editor Server

## 日志相关
LOG_DIR = ./logs

## 数据库相关
SQLITE_DB_PATH = ./db
SQLITE_DB_NAME = umo-editor-server.sqlite

## 协作相关
DOC_SAVE_INTERVAL = 5000 # 单位为毫秒

## AI相关
DEEPSEEK_API_KEY = your-api-key
DEEPSEEK_API_URL = https://api.deepseek.com/v1
OPENAI_API_KEY = your-api-key
OPENAI_API_URL = https://api.openai.com/v1
MOONSHOT_API_KEY = your-api-key
MOONSHOT_API_URL = https://api.moonshot.cn/v1

## 白名单
WHITE_LIST = 127.0.0.1, 0.0.0.0, localhost
```

您也可以直接从 `.env.example` 中复制这些信息。

### 4. 启动项目

```sh npm2yarn
npm run dev
```

### 5. 一切就绪
 
通过上述操作，您已经成功启动了 Umo Editor Server，访问 http://127.0.0.1:1235/docs 即可查看 Swagger 文档。


## 白名单配置

Umo Editor Server 提供了白名单配置的能力，如果配置了白名单，不在白名单中的访问请求将会被拒绝访问。

您可以在 `.env` 文件中添加 `WHITE_LIST` 环境变量，该环境变量的值为一个以 `,` 分隔的字符串，每个字符串代表一个 IP 地址或域名（[URL hostname](https://developer.mozilla.org/zh-CN/docs/Web/API/URL/hostname) 格式，不需要访问协议和端口），例如：

```bash filename=".env"
WHITE_LIST = 127.0.0.1, 0.0.0.0, localhost, example.com
```

## 开发说明

- 对于多人协作编辑、文档批注(评论)等场景，Umo Editor Server 提供了详尽的配置和钩子方法，默认采用 SQLite 存储数据（不同文档请使用不同的文档 id），您可以通过 `database`、`redis`、`sqlite`、`webhook` 等扩展和现有业务系统对接或通信，详细说明见代码注释；
- 您可以将 Umo Editor Server 单独作为一个服务进行部署，通过网关、数据库、HTTP 请求等实现和其他业务系统的对接或通信。Umo Editor Server 目前不包含鉴权的实现（但提供了实现思路和示例代码，见[鉴权说明](./server/auth)），如果有需要，请自行实现；
- 如果需要二次开发，源代码中提供了大量详尽的注释应该会对您非常有帮助。

## 部署说明
- 在支持 `nodejs` 的环境中，您可以直接使用 `npm run production` 运行项目，此命令提供了通过 [pm2](https://pm2.io/) 守护进程的能力和记录日志的能力。
- 也可以直接将项目部署到 `docker` 容器中，您可以根据实际需要修改 `Dockerfile`，见[docker 部署](./server/docker)。

## Umo Team 出品

- [Umo Editor](https://dev.umodoc.com/cn/docs/editor): 基于 Vue3 和 Tiptap 的本土化开源文档编辑器，专为国人用户设计。
- [Umo Viewer](https://dev.umodoc.com/cn/docs/viewer): PDF 文档查看器，基于 Vue3 和 PDF.js 实现，支持在浏览器中直接预览 PDF 文档，同时也支持预览 Umo Editor 文档内容。
- [Umo Editor Next](https://dev.umodoc.com/cn/docs/next): Umo Editor 的增强版，在包含最新版本的 Umo Editor 所有功能的基础上，重点增加或者增强了对多用户在线协作编辑、文档批注(评论)、文档历史版本管理、AI 创作、文档导入导出、表格等功能的支持，同时增强了工具栏和页边栏等区域的自定义能力。
- [Umo Editor Server](https://dev.umodoc.com/cn/docs/server): 为增强 Umo Editor 功能，如多用户在线协作编辑、文档批注(评论)、文档导入导出等功能而开发的配套服务器端软件。
- [Umo Office Viewer](https://dev.umodoc.com/cn/docs/office-viewer): Umo Office Viewer 是一款 Office 文档查看器，支持在 Web 页面中查看包括 WPS 文档在内的 40 余种主流的办公文档。
- [Umo Office Convert](https://dev.umodoc.com/cn/docs/office-convert): 将 Office、WPS 等 40 余种办公文档转换为可在线查看的文档格式，可与 Umo Office Viewer 结合使用实现办公文档的在线预览。
